package ai.leinao.notify.core.template;

import ai.leinao.notify.core.enums.NotifyType;

/**
 * 通知模板供应商
 *
 * @author zhong.wang
 * @date 2025/7/8
 */
public interface TemplateProvider {
    /**
     * 获取通知类型
     * @return
     */
    NotifyType getNotifyType();

    /**
     * 创建通知模板
     * @param properties
     * @return
     * @param <T>
     */
    <T extends Template> T createTemplate(TemplateProperties properties);

    /**
     * 获取供应商名称
     * @return
     */
    String getProvider();
}
